package com.xl.exercise;

import java.util.Random;

public class Test2 {
    public static void main(String[] args) {
        //生成随机验证码
        String code = generateRandomCode(4);
        System.out.println("验证码："+code);
    }

    public static String generateRandomCode(int length) {
        StringBuilder sb = new StringBuilder();
        //定义个for循环用于控制生成多少位的随机字符
        Random random = new Random();
        for (int i = 1; i <= length; i++) {
            //为每个位置生成一个随机字符，可能是数字，大小写字母
            //随机一个0.1.2之间的数字出来，0代表随机一个数字，1代表随机一个大写字母，2代表随机一个小写字母
            int type = random.nextInt(3);
            switch (type) {
                case 0:
                    sb.append(random.nextInt(10));
                    break;
                case 1:
                    //随机一个大写字母 A 65 Z 65+25 (0-25)+65
                    sb.append((char) (random.nextInt(26) + 'A'));
                    break;
                case 2:
                    //随机一个小写字母 a 97 z 97+25 (0-25)+97
                    sb.append((char) (random.nextInt(26) + 'a'));
                    break;
            }
        }
        return sb.toString();
    }
}
